package com.excesys.exsecs.alarm.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 告警类型配置表
 *
 * @author lxc
 * @date 2024-10-14 16:40:36
 */
@Data
@TableName("alarm_type_conf")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "告警类型配置表")
public class AlarmTypeConf extends Model<AlarmTypeConf> {


	/**
	* 主键id
	*/
    @TableId(type = IdType.AUTO)
    @Schema(description="主键id")
    private Integer id;

	/**
	* 告警类型编码
	*/
    @Schema(description="告警类型编码")
    private String typeCode;

	/**
	* 告警类型名称
	*/
    @Schema(description="告警类型名称")
    private String typeName;

	/**
	* 告警等级:1-一般、2-严重、3-紧急
	*/
    @Schema(description="告警等级:1-一般、2-严重、3-紧急")
    private String level;

	/**
	* 告警方式(多个，以逗号分割)
	*/
    @Schema(description="告警方式(多个，以逗号分割)")
    private String way;

	/**
	 * 告警方式(前端使用)
	 */
	@Schema(description="告警方式(多个，以逗号分割)")
	@TableField(exist = false)
	private String[] wayList;


	/**
	* 发送人员(多个，以逗号分割)
	*/
    @Schema(description="发送人员(多个，以逗号分割)")
    private String sender;

	/**
	 * 发送人员(多个，以逗号分割)
	 */
	@Schema(description="发送人员(前端使用)")
	@TableField(exist = false)
	private String[] senderList;


	/**
	 * 发送人员名称(多个，以逗号分割)
	 */
	@Schema(description="发送人员名称(多个，以逗号分割)")
	@TableField(exist = false)
	private String senderName;

	/**
	* 告警声音
	*/
    @Schema(description="告警声音")
    private String sound;

	/**
	* 状态 0-关、1-开
	*/
    @Schema(description="状态 0-关、1-开")
    private Integer status;

	/**
	* 创建人
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建人")
    private String createBy;

	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建时间")
    private LocalDateTime createTime;

	/**
	* 更新人
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="更新人")
    private String updateBy;

	/**
	* 更新时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="更新时间")
    private LocalDateTime updateTime;
}